import { QueryOptionsDto } from '@/types/common/dto/query.options.dto';
import { QueryListVo } from '@/types/common/vo/query.list.vo';
import { ITypeEntity } from '../type/superType.type';

export class ApiTypePutDto extends ITypeEntity {
  // 现在的问题是  集成自文件里  swagger 插件没有读取到
}

export class ApiTypeGetReqDto extends QueryOptionsDto {
  /**
   * 使用名称获取类型 UserEntity
   */
  name?: string;

  /**
   * 根据类型描述检索
   */
  desc?: string;

  /**
   * 使用ID获取类型
   */
  _id?: string;

  ids?: string[];

  /**
   * 根据种类获取类型
   */
  type?: string;

  /**
   * 多选类型
   */
  types?: string[];

  /**
   * 根据关联对象获取
   */
  fkId?: string;

  projectId?: string;

  teamId?: number;

  fileName?: string;

  condition?: Record<string, any>;

  /**
   * 唯一键值
   */
  unikey?: string;

  /**
   * 字段过滤
   */
  select?: string[] | Record<string, 0 | 1>;

  /**
   * 最后更新时间
   */
  afterTime?: number;
}

export class ApiTypeGetResDto extends QueryListVo {
  data: ITypeEntity[];
}
